# 方法重载是指在同一个类中定义多个同名方法，
# 但这些方法的参数类型或参数数量不同。调用时根据参数自动选择合适的方法。这是 静态多态性 的体现。

# Python 不支持传统的方法重载，因为：
# Python 是动态类型语言，方法的参数类型在运行时确定。
# Python 的函数定义是 唯一 的，后定义的函数会覆盖之前的同名函数。

class Animal:
    def speak(self):
        print("Animal makes a sound")

    def speak(self,msg):
        print("Animal makes a sound " + msg)

animal = Animal()
animal.speak("❤")